package com.yootk.nacos.dept;

import com.alibaba.nacos.api.PropertyKeyConst;
import com.alibaba.nacos.api.naming.NamingFactory;
import com.alibaba.nacos.api.naming.NamingService;

import java.util.Properties;
import java.util.concurrent.TimeUnit;

public class RegisterNacosDeptInstanceA { // 服务实例注册
    public static final String NACOS_SERVER = "nacos-server:8848"; // Naco连接地址
    // 此时的命名空间使用的是自定义命名空间（名称为“muyan”，去Nacos中查找）
    public static final String NAMESPACE = "0007211f-2731-495f-bf7e-6845bda78727"; // 命名空间
    public static final String GROUP = "MICROCLOUD_GROUP"; // 分组
    public static final String INSTANCE_ID = "micro.provider.dept"; // 存储的KEY

    public static void main(String[] args) throws Exception { // 沐言科技：www.yootk.com
        Properties properties = new Properties(); // 将Nacos的相关属性进行配置
        properties.put(PropertyKeyConst.SERVER_ADDR, NACOS_SERVER); // 服务地址属性
        properties.put(PropertyKeyConst.NAMESPACE, NAMESPACE); // 命名空间
        // 此时要发布的并不是配置项，而是服务项，所以就需要创建命名服务实例
        NamingService naming = NamingFactory.createNamingService(properties);
        // 准备向Nacos注册中心进行服务的注册处理
        naming.registerInstance(INSTANCE_ID, GROUP, "192.168.9.19",
                8888, "DeptProviderYunnanCluster");
        // 当服务注册成功之后就需要持续的向Nacos发送心跳，不发送心跳表示嗝屁
        TimeUnit.MINUTES.sleep(Long.MAX_VALUE); // 保证进程不关闭
    }
}
